//
// Created by zuo on 2024/7/7.
// 题目链接 https://www.lanqiao.cn/problems/3412/learning/?page=1&first_category_id=1&problem_id=3412
// 题目链接 https://www.lanqiao.cn/problems/545/learning/?page=1&first_category_id=1&problem_id=545
// 题目链接 https://www.lanqiao.cn/problems/532/learning/?page=1&first_category_id=1&problem_id=532
// 题目链接 https://www.lanqiao.cn/problems/2928/learning/?page=1&first_category_id=1&problem_id=2928
//

#include<bits/stdc++.h>
using namespace std;
using ll = long long;
const int N = 1e6 + 7;
ll a[N];
char s[N];
priority_queue<ll, vector<ll>, greater<ll>> pq; // greater 小根堆

int main()
{
    // 3412
    // int n;
    // cin >> n;
    // for (int i = 0; i < n; i++) cin >> a[i];
    // sort(a, a + n);
    // ll ans = a[1] - a[0];
    // for (int i = 1; i < n; i++)
    // {
    //     ans = min(ans, a[i] - a[i - 1]);
    // }
    // cout << ans;

    // 545
    // int n;
    // cin >> n;
    // for (int i = 0; i < n; i++)
    // {
    //     cin >> a[i];
    //     pq.push(a[i]);
    // }
    // int ans = 0;    // 一个部落 不需要合并
    // while (pq.size() > 1)
    // {
    //     ll x = pq.top(); // 最小值
    //     pq.pop();
    //     ll y = pq.top(); // 次小值
    //     pq.pop();
    //     ans += x + y;
    //     pq.push(x + y);
    // }
    // cout << ans;

    // 532
    // int w;
    // cin >> w;
    // int n;
    // cin >> n;
    // for (int i = 0; i < n; i++)
    // {
    //     cin >> a[i];
    // }
    // sort(a, a + n); // 升序
    // int l = 0, r = n - 1;
    // int ans = 0;
    // while (l <= r)
    // {
    //     if (a[r] + a[l] <= w)
    //     {
    //         ans += 1;
    //         l++;
    //         r--;
    //     }
    //     else
    //     {
    //         ans += 1;   // 太大 单独一组
    //         r--;
    //     }
    // }
    // cout << ans;

    // 2928
    // 字典序（dictionary order），又称 字母序（alphabetical order），
    // 含义是表示英文单词在字典中的先后顺序，在计算机领域中扩展成两个任意字符串的大小关系。
    int n, x;
    cin >> n >> x;
    cin >> s; // char 数组 也可以直接获取字符串
    sort(s, s + n); // 升序
    if (s[0] == s[n - 1])
    {
        // aaaaaa 形式
        for (int i = 0; i < n / x + (n % x ? 1 : 0); i++)
        {
            cout << s[0]; // 所有字符都一样
        }
    }
    else if (s[0] == s[x - 1])
    {
        // 同学的个数 和 排序后最大的字符一样多   abccd  a
        for (int i = x - 1; i < n; i++)
        {
            cout << s[i];
        }
    }
    else
    {
        // 最大的字典序就是本身  本身后面的都丢给前面就行
        cout << s[x - 1];
    }

    return 0;
}
